# -*- coding: utf-8 -*-
# 创建时间：2021/7/16 10:44
from selenium import webdriver

import time, math, random ,json


__author__ = 'LuckyHhy'

# 浏览器自动化

def main():
    browser=webdriver.Firefox(executable_path =r'D:\chromedriver\geckodriver.exe')
    browser.get('https://www.jd.com')
 # 获取输入框对象
    search = browser.find_element_by_xpath('//*[@id="key"]')
    #print(search)
    # 输入想要搜索的关键词,如"ps5国行"
    search.send_keys('ps5国行')
    # 获取搜索按钮对象并单击
    search_btn=browser.find_element_by_xpath('/html/body/div[1]/div[4]/div/div[2]/div/div[2]/button')

    search_btn.click()

    # 将滚动条移动到页面底部，用于加载所有信息
    javascript = "var q=document.documentElement.scrollTop=50000"
    # 执行 javascript 移动滚动条
    browser.execute_script(javascript)
    # 等待3秒，有些异步加载的数据加载慢
    time.sleep(3)

    # 通过查看页面源码得到金额的 xpath 路径，并获取金额
    prices = browser.find_elements_by_xpath('//*[@id="J_goodsList"]/ul/li/div/div[2]/strong/i')
    # 通过查看页面源码得到商品标题的 xpath 路径，并获取商品标题
    names = browser.find_elements_by_xpath('//*[@id="J_goodsList"]/ul/li/div/div[3]/a/em')

    # 遍历打印出当前页所有标题和金额
    for name, price in zip(names, prices):
        print(name.text.replace('\n', ''), price.text)

    # 退出浏览器
    browser.quit()



if __name__ == '__main__':
    main()
